#ifndef VERTEXORDERS_H_
#define VERTEXORDERS_H_

#include<string.h>
#include"graph.h"

// the vertex array

int sortAs(const int nVSet, long * ord);
void mcrStableSort(const int nVSet, int * c);
int indexCoverSort(const int r, int * ind, int * cover);
// determines a clique cover and order the vertices accordingly
// it uses a greedy algorithm from index r-1 to 0
int coverSort(const int r, int * cover);

int getNeighbors(int iu, int beg, int end, int * nneigh, int * neigh);
int getAntineighbors(int iu, int beg, int end, int * nantineigh, int * antineigh);

#endif /*VERTEXORDERS_H_*/
